package viewDeLivreur;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;

import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;

import model.Commande;
import modelDeLivreur.ModelFacadeLivreur;
import model.Restaurant;

/* Cette classe s'occupe de l'affichage de la fen�tre dans laquelle
 * on a un choix de restaurant
 */
public class VueLivraisons extends JFrame {
	
	private JPanel fenetre = new JPanel();
	private JRadioButton[] restoRadioButton;
	private List<Commande> liste;
	private static final long serialVersionUID = -3535118786934945940L;
	private static final int CANEVAS_HAUTEUR = 600;
	private static final int CANEVAS_LARGEUR = 864;
	private static final int MARGE_H = 50;
	private static final int MARGE_V = 60;
	private ButtonGroup groupeLivraisons = new ButtonGroup();

	public VueLivraisons() {
		this.liste = ModelFacadeLivreur.getInstance().getListeCommande();
		UiSupport.createApplicationFrame(this, "Choix de la commande", 0, 0,
				CANEVAS_LARGEUR + MARGE_H, CANEVAS_HAUTEUR + MARGE_V);

		creerInterfaceRestaurant(liste);

		setVisible(true);
	}

	public void addRestaurantListener(ActionListener listener) {
		for (int i = 0; i < restoRadioButton.length; i++) {
			restoRadioButton[i].addActionListener(listener);
		}
	}

	private void creerInterfaceRestaurant(List<Commande> liste) {

		restoRadioButton = new JRadioButton[liste.size()];
		for (int i = 0; i < liste.size(); i++) {

			restoRadioButton[i] = new JRadioButton(liste.get(i).getNumeroConfirm());

			groupeLivraisons.add(restoRadioButton[i]);

			fenetre.add(restoRadioButton[i]);

		}
		this.add(fenetre);

	}

}
